def test1():
    print('Tab缩进')
    print('Shift+Tab  缩进')


def test2():
    str1 = '0123456789'
    print(str1[9:5:-1])  # 注意第一个数更大，若写反，无结果


class Cat(object): # 默认继承object类，无需写
    '''这是一个猫类'''

    def __init__(self, name):
        print('这是一个初始化方法')
        self.name = name

    def eat(self):
        print('小猫爱吃鱼')

    def drink(self):
        print('小猫在喝水')

    def __del__(self):
        '''销毁对象'''
        print(f'{self.name}对象被销毁')

    def __str__(self):
        '''返回对象信息  print时'''
        return f'对象{self.name}'


def part():
    cat1 = Cat('局部')  # 局部变量再执行结束时销毁
    print('执行结束')


if __name__ == '__main__':
    # test2()
    tom = Cat('汤姆猫')
    tom.eat()
    tom.drink()

    tom.height = 18  # python 独有的方式，可以创建新属性，但不规范
    print(tom.height)

    print(tom)

    lazy_Cat = Cat('懒猫')

    part()

    del tom
    print('程序结束')
